Android反编译工具的使用-Android Killer

今天百度搜索“Android反编译”搜索出来的结果大多数都是比较传统的教程。刚接触反编译的时候,我也是从这些教程慢慢学起的。在后来的学习过程中,我接触到比较方便操作的Android反编译。在这,我将使用的过程写下来,贡献给有需的朋友,为国内Android的事业作出一点点贡献。

首先

我们先看一Android界有名的大神写关于Android反编译的博客:

(郭大侠)http://blog.csdn.net/guolin_blog/article/details/49738023

(鸿洋大神)http://blog.csdn.net/lmj623565791/article/details/23564065

(主席大神)http://blog.csdn.net/singwhatiwanna/article/details/18797493

我推荐大家使用的Android反编译的软件是Android Killer。(这启动界面Cool爆了)

其实这个软件就是对以上博客提到的操作进行一系列的封装。打开这个软件你就可以发现这些熟悉的反编译工具。

接着

打开待反编译的apk。(在这示范反编译美柚)

软件清晰地展示了美柚的信息。(是反编译的不错选择)

切换到工程管理器,可以查看反编译的资源和smail代码等。

接下来

查看smali代码,找到你需要查看的文件,点击下图的这个图标

看到熟悉的界面了吧。。。

——————————–接下来我们修改apk,然后重新打包–不要干坏事—————————–

下面演示修改一个apk的名称

切换到工程搜索,输入app_name,点击下面搜索到的内容,修改为美柚a。

接下来,编译打包。

切换到Android,点击编译。菜单栏还有好多关于Android功能。

从日志输出的信息可以看到,已经编译打包好了。

最后,我们安装编译好的apk。

这软件还有好多功能,在这不一一列出了,有兴趣的朋友自己慢慢摸索。

在些,我不是在为这个软件做广告,只是推荐大家使用。

最后,软件的下载链接:http://pan.baidu.com/s/1o7lfgfg

也可以自己百度下载。


2016/7/16 更新

现在的App越来越大,一般都会有多个Dex文件。在使用Android Killer的查看源码过程中,你可能会遇到在samail_class2、sameil_class3目录下点击反编译源码时报未找到对应的源码这种情况,如下图。

以上这个问题,我已经发邮件给软件的制作者,但是还没有得到回应。这个问题是软件没有将其他的classX.dex转成对应classesX-dex2jar,所以找不相对应的源码。

为了可以查看完整的源代码,这里手动将其他的classX的转化对应classes2-dex2jar并放置到Android Killer对应的目录。

  • 利用解压软件将apk里面除了classes.dex的其他claseesX.dex提取出来,将放到Android Killer的bin/dex2jar的目录下,如下图。

  • 在bin/dex2jar目录下打开命令行,执行d2j-dex2jar.bat classesX.dex (classesX.dex中X对应你的dex名称)

  • 最后,将生成的包复制到Android Killerr的projects/你反编译的apk名/ProjectSrc目录下,如下图。